【レポート】 製造業における IoT×AI/ML 基盤の構築とその運用事例 #AWSSummit
2020年9月8日から30日まで開催されるAWS Summit Onlineのレポートです。
本記事で取り上げるセッションは下記となります。
セッション情報
スピーカー
株式会社アイデミー 代表取締役 社長 石川 聡彦 氏
概要
作成した ML モデルを PoC として 1 工場で運用し、ある程度の成果が得られたにも関わらず、そこから先の実運用に進まないといったケースが多くの企業で散見されます。本講演では、主に製造業の方向けに、製造現場での AI 基盤を AWS を用いて構成した事例をもとに、海外拠点の管理、関係部署との責任問題、複数ステーションでの大規模運用など、製造業ならではのお悩みに対して、AWS を使ってどうのように対処したのかをご紹介します。
セッションレポート
1. MLOpsとは
機械学習モデルのフェーズは、4つに分かれる
- AI人材の育成
- AI課題の特定
- AIモデルの作成
- AIモデルの運用
- これらが循環すると良い
- 本セッションでは、AIモデルの運用に焦点を当てる
世の中のAIに対する間違ったイメージ
- 機械学習モデル(AI)ができた! これを運用すればすぐ結果が出るはずで、AIプロジェクトはもう終りに近いぞ!
- 機械学習プロジェクトは、MLモデルができてから、長い戦いが始まる
MLOpsとは
- 本番環境でのMLアプリケーション導入と管理を迅速にする、拡張性と管理性についての技術とベストプラクティスの集合体
- 機械学習モデルの運用部分が大切
- 機械学習モデルの開発は、一部分に過ぎない
機械学習モデルを活用したあとに必要になるタスク
- 管理画面
- 機械学習モデルを管理する
- 性能はどうか
- IoTデバイスが稼働してるかどうか
- 異常時の通知
- トラブルを未然に防ぐ
- すぐに対応する
- データ保存基盤の構築
- 機械学習とデータは切っても切り離せない
- 参照しやすいようにデータレイクを作る
- IoTデバイスの管理
- 機械学習モデルをデプロイする
- センサーデータの収集
- 機械学習モデルを管理するのと同じぐらい、IoTデバイスの管理は大切
- 継続的なアノテーションの実施
- 溜まったデータに対して正解ラベルを付与する
- 人手が継続的にかかる
- MLモデルの再訓練
- 継続的なアノテーション実施で生まれたデータを元に、機械学習モデルを再訓練する
機械学習モデルの再訓練とは
- 再訓練をすることで性能が上がる
- 再訓練をしなければ、基本的に性能は下がる
- 機械学習モデルを作ったタイミングで無かったデータが混入する
- これらのデータを再訓練に活用する
- 工場だとライン位置が変わってデータ取得方法が変わる
- 季節によってデータが異なる
2. 製造業特有の課題
- 本社と現場のステークホルダーの変容
- Windows-Linuxおよびオンプレ-クラウド技術選定
本社と現場のステークホルダーの変容
- PoCとして、RD/DX部門などが機械学習モデルを作成する
- 実運用に移行するとき、外注?内製? 内製ならどこが中心に? などが決まっていない
- PoCの体制と実運用の体制で主体や手段が変わる
各社の取り組み
- 基本的には、研究所が現場に合わせる
- AI/IoT教育研修などの啓蒙活動も主導
- 研究所の担当が現場に転籍するケースも
Windows-Linuxおよびオンプレ-クラウド技術選定
- 昔からWindowsを使っているなどの理由もあり、本社側と現場側で乖離がある
- ケースバイケース
- 現場が扱いやすいシステムでWindows/オンプレ
- モダンな技術でよくある設計、これからAI/IoTが中心になるので、Linuux/クラウド
エッジデバイスの選定
- プロジェクトによって変わってくる
- Pythonやライブラリのバージョンが噛み合わない場合
- PythonのサブプロセスをしてPython3.7を実行して解決など
- デバイスの制約などを予め整理することが大事
- ウォーターフォール的に機械学習モデルを作って次に運用だ、といった形は難しい
3. アーキテクチャ案
- IoT Coreを使って、エッジデバイスを管理する
- Greengrassを使うことで、エッジデバイスでLambdaを動かす
- クラウドからGreengrass経由で機械学習モデルなどをデプロイできるようになる
- デバイスの管理が便利にできる
- カメラから画像を取得し、エッジ側で推論する
- 得られた画像はローカルで保存し、Lambdaを使ってクラウドにも送る
- センサーから収集されたデータをGreengrassのLambdaを使ってクラウドに渡し、Kinesis DataStreamを経由してストレージに保存する
- Amazon SageMakerを使って機械学習モデルを管理する
- Amazon QuickSightで今の状況を可視化する
IoTは考えることがたくさん
- 制御はどうするか
- 通信はどうするか
- 監視はどうするか
- セキュリティはどうするか
- AWS IoT Greengrassの利用で、エッジデバイスの管理をより便利にできる
- エッジ側でLambdaを動かせる、1clickでデプロイ
- MQTT通信を標準装備
- CloudWatchで監視できる
- 証明書認証を簡単導入
製造現場は、データの宝庫
- 複数種類のデータが昼夜問わず大量に送信される
- Amazon Kinesisを利用することで、大容量データをニアリアルタイムで処理できる
- Amazon Kinesis Video Streams
- Amazon Kinesis Data Streams
Amazon SageMakerの利用で、MLOpsの基本機能を楽に実装できる
- ノートブックインスタンス
- 推論エンドポイントの簡単作成
- インスタンス管理もGUIで可能
- Amazon SageMaker Ground Truth
- 画像周りの一通りのアノテーション機能を提供
- タスク状況も管理も可能
感想
前半はIoT/AIあるあるといった内容で非常に共感できました。そして後半では、ケースバイケースだとしながらも、具体的な方法が提示されており参考になります。 特に実際に運用するのは現場の方なので、現場にとって使いやすいものといった点は、迷ったのときの指標になると思いました。